package com.danco.planner.view.builders;

import com.danco.planner.supportclasses.enumeration.IEventType;
import com.danco.planner.view.consoleextension.ConsoleButton;
import com.danco.planner.view.core.AbstractLabel;
import com.danco.planner.view.core.View;

public abstract class AbstractViewsBuilder {

	public View buildView() {
		return new View();
	}
	public View buildView(IEventType type) {
		return new View(type);
	}
	
	public abstract AbstractLabel buildLabel();
	public abstract AbstractLabel buildLabel(String text);
	public abstract AbstractLabel buildLabel(String text, IEventType type);
	public abstract ConsoleButton buildButton();
	public abstract ConsoleButton buildButton(String text);
	public abstract ConsoleButton buildButton(String text, String targetCommand);
	/*
	 * Text - is title
	 * TargetCommand - is event command
	 * Type - is EventType
	 */
	public abstract ConsoleButton buildButton(String text, String targetCommand, IEventType type);
}
